Based on rapid development of flash (NAND flash) data storage technology in the past ten years, flashes gradually replace the traditional magnetic hard drive (hard disk drive, HDD) in many applications. Compared with traditional hard disk-based storage systems, protection for power-failure situations occurred in SSDs (solid-state drives) is significantly different, and there are inherent advantages and inherent disadvantages. Since there is no mechanical portion, there is no problem of emergent parking of magnetic heads. However, there is more complex metadata and data cache in SSDs. Thus, SSDs have to ensure that data can be written into media to guarantee integrity of metadata and user data. For enterprise applications, the following requirements are needed to guarantee that: 1, after SSDs are restarts due to power interruption, they must operate normally; and 2, all data which has been written must be read out correctly.
In a traditional SSD system, a controller is implemented by an embedded processor and firmware. The controller is fragile when the power is interrupted or when the host restarts suddenly. In order to guarantee that the processor can operate normally until metadata and data can be stored in media completely, a long time is usually taken for the operation of the processor. Thus, a battery or super-capacitor is needed to provide the required power. If the battery itself is failed, the vulnerability of the system becomes more series. Some SSD systems do not have any protection mechanism, and their security is inherently low.
Thus, how to guarantee the integrity of system data when the power is failed becomes the issue for to those skilled in the art.